﻿namespace Core
{
    //public class EditorFileData : Component, IAwake, IFileData
    //{
    //    private string ROOT;
    //    private PrefixDict prefixDict;

    //    public void Awake()
    //    {
    //        ROOT = Application.persistentDataPath + "/USER_DATA_PATH/";
    //        prefixDict = new PrefixDict(ROOT);
    //    }

    //    public override void Dispose()
    //    {
    //        if (IsDisposed) return;
    //        base.Dispose();
    //    }

    //    private void CheckFile(string path)
    //    {
    //        var fi = new FileInfo(path);

    //        if (!Directory.Exists(fi.DirectoryName))
    //        {
    //            Directory.CreateDirectory(fi.DirectoryName);
    //        }

    //        if (!File.Exists(path))
    //        {
    //            using (File.Create(path)) { }
    //        }
    //    }

    //    public string Read(string path)
    //    {
    //        path = prefixDict[path];

    //        CheckFile(path);

    //        try
    //        {
    //            return File.ReadAllText(path);
    //        }
    //        catch
    //        {
    //            return string.Empty;
    //        }
    //    }

    //    public void Append(string path, string content)
    //    {
    //        path = prefixDict[path];

    //        CheckFile(path);

    //        using (var sw = File.AppendText(path))
    //        {
    //            sw.WriteLine(content);
    //        }
    //    }

    //    public void Write(string path, string content)
    //    {
    //        path = prefixDict[path];

    //        CheckFile(path);

    //        File.WriteAllText(path, content);
    //    }
    //}
}
